package com.eightworld3.supermarket.service;

import com.eightworld3.supermarket.domain.WareType;
import com.eightworld3.supermarket.service.dto.WareTypeDTO;
import com.eightworld3.supermarket.service.dto.add.WareTypeAddDTO;
import com.eightworld3.supermarket.service.dto.result.ResponseResult;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * @author EightWorld3
 */
@Service
public interface WareTypeService {
    /**
     * 查询所有
     * @return 返回所有WareType(商品类型)
     */
    List<WareType> selectAll();

    /**
     * 根据wareTypeId查询WareType
     * @param wareTypeId ID号
     * @return 返回wareTypeId对应的WareType对象(经ResponseResult包装类修饰)
     */
    ResponseResult selectByWareTypeId(Integer wareTypeId);

    /**
     * 新增WareType
     * @param wareTypeAddDTO WareType新增DTO对象
     * @return 返回当前当次新增状况(经ResponseResult包装类修饰)
     */
    ResponseResult addWareType(WareTypeAddDTO wareTypeAddDTO);

    /**
     * 修改WareType
     * @param wareTypeDTO WareType DTO对象
     * @return 返回当前当次更新状况(经ResponseResult包装类修饰)
     */
    ResponseResult updateWareType(WareTypeDTO wareTypeDTO);

    /**
     * 删除WareType
     * @param wareTypeId ID号
     * @return 返回当前当次删除状况(经ResponseResult包装类修饰)
     */
    ResponseResult deleteWareTypeByWareTypeId(int wareTypeId);
}
